home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The World of Computer Software
/
The World of Computer Software.iso
/
xbiblo.zip
/
XBIBLO
< prev
Wrap
Text File
|
1993-01-27
|
60KB
|
1,106 lines
This is my latest bibliography of good, publically available X Window System
technical material. There may be other good papers in unpublished conference
proceedings and tutorial notes, but these are difficult to find, so I am not
listing them here. There's alot of other stuff out there, but I think these
are the best references. If you know of any other good ones, please let me
know.
There are two journals dedicated to material on X. As they should be pretty
well indexed, the bibliography will only include selected papers. These
journals are *The X Journal* (1097 Eastbrook Rd., Martinsville, N.J. 08836;
phone +1-908-563-9033) and *The X Resource: A Practical Journal of the X Window
System* (O'Reilly & Associates, 103 Morris St., Sebastapol, CA 95472; phone
+1-707-829-0515).
The MIT X Consortium hold an annual conference including paper presentations.
The proceedings from the 6th conference (January, 1992) are included in Winter
issue of *The X Resource* (see above). Papers from earlier conferences were
distributed to attendees only and not formally published.
The book reviews come from a wide variety of sources. They are intended to
guide readers who don't have the time or money to buy more than one or two.
The reviews come from a variety of sources. I do appreciate comments from
readers, especially reviews comparing two or more books covering similar
subjects.
Many people have been asking questions about the bibliography. No, I'm not
distributing it in any other format. If your printer can't handle the UNIX-
style underlining, run it through the UNIX col filter or the equivalent on your
system. The sample code from most of the books listed here is available on-
line, usually by anonymous ftp to export.lcs.mit.edu, uunet.uu.net, or
gatekeeper.dec.com. Yes, I do accept (and appreciate) review copies of
material. Yes, you may put copies of this in your books (see the permission
notice below), but please let me know and include the date and contact info
from the header. Approximately one a month, updates to this bibliography will
be distributed through the comp.windows.x USENET group, the xpert Internet
mailing list, and anonymous FTP:
export.lcs.mit.edu:/contrib/Xbibliography and
gatekeeper.dec.com:/pub/X11/contrib/Xbibliography
Due to popular demand, I am also preparing a PostScript version. This is
available only by anonymous FTP:
export.lcs.mit.edu:/contrib/Xbibliography.ps
gatekeeper.dec.com:/pub/X11/contrib/Xbibliography.ps
Please do not ask for updates other than these.
Sorry, I am not able to distribute copies of the material mentioned here. Your
librarian or bookstore should be able to help you.
Ken
================================ cut here ================================
X TECHNICAL BIBLIOGRAPHY
please send updates to:
Ken Lee, DEC WSL, 335 Bryant St., Palo Alto, CA 94301
Internet: klee@pa.dec.com, UUCP: uunet!decwrl!klee
November 4, 1992
Copyright (c) 1990, 1991, 1992 by Digital Equipment Corpora-
tion, Maynard, Massachusetts.
Permission to use, copy, modify and distribute this documen-
tation for any purpose and without fee is hereby granted,
provided that both the above copyright notice and this per-
mission notice appear in all copies, and that the name of Di-
gital Equipment Corporation not be used in advertising or
publicity pertaining to this documentation without specific,
written prior permission.
Adobe Systems Inc., _P_r_o_g_r_a_m_m_i_n_g _t_h_e _D_i_s_p_l_a_y _P_o_s_t_S_c_r_i_p_t _S_y_s_t_e_m _w_i_t_h _X,
Addison-Wesley, 1992. To be published in December, 1992. A tutorial
on the DPS extension to X, by its developers. Not yet reviewed.
Angebranndt, Susan and et al, "Integrating Audio and Telephony in a Distri-
buted Workstation Environment," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _S_u_m_m_e_r, _1_9_9_1
_U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 419-435. Describes a client-server audio
toolkit whose architecture is very similar to that of the X Window
System.
Angebranndt, Susan, Raymond Drewry, Philip Karlton, Todd Newman, Bob
Scheifler, and Keith Packard, _D_e_f_i_n_i_t_i_o_n _o_f _t_h_e _P_o_r_t_i_n_g _L_a_y_e_r _f_o_r _t_h_e
_X _v_1_1 _S_a_m_p_l_e _S_e_r_v_e_r, 1988-1991. A detailed reference to the modules
of the sample server. This is a companion to "Strategies for Porting
the X v11 Sample Server" by the same authors. Both are included in the
MIT X11R5 distribution (X11R5/mit/doc/Server).
Angebranndt, Susan, Raymond Drewry, Philip Karlton, Todd Newman, Bob
Scheifler, and Keith Packard, _S_t_r_a_t_e_g_i_e_s _f_o_r _P_o_r_t_i_n_g _t_h_e _X _v_1_1 _S_a_m_p_l_e
_S_e_r_v_e_r, 1988-1991. A guide to strategies for porting the sample
server. This is a companion to "Definition of the Porting Layer for
the X v11 Sample Server" by the same authors. Both are included in
the MIT X11R5 distribution (X11R5/mit/doc/Server).
Angebranndt, Susan, Phil Karlton, Raymond Drewry, and Todd Newman, "Writing
Tailorable Software: The X11 Sample Server," _S_o_f_t_w_a_r_e _P_r_a_c_t_i_c_e _a_n_d _E_x_-
_p_e_r_i_e_n_c_e, vol. 20, no. S2, October, 1990. Portability was a major
goal for the X11 sample server. This article discusses design and im-
plementation issues that helped achieve portability.
Angebranndt, Susan and Todd Newman, "The Sample X11 Server Architecture,"
_D_i_g_i_t_a_l _T_e_c_h_n_i_c_a_l _J_o_u_r_n_a_l, vol. 2, no. 3, pp. 16-23, Summer, 1990. An
overview of the sample server, including goals, problem areas,
modules, and porting guidelines.
- 2 -
Asente, Paul, "Simplicity and Productivity," _U_N_I_X _R_e_v_i_e_w, vol. 6, no. 9,
pp. 57-63. A discussion on the classing mechanism in the X Toolkit.
Asente, Paul J. and Ralph R. Swick, _X _W_i_n_d_o_w _S_y_s_t_e_m _T_o_o_l_k_i_t, Digital Press,
1990. ISBN 1-55558-051-3. The X Toolkit bible, a companion to
Sheifler & Gettys book on Xlib and the X protocol. It includes both a
tutorial on programming with the X Toolkit and a formal specification
of the toolkit. The tutorial, which covers both using and writing
widgets, is comprehensive and excellent. The specification is an
enhancement of the MIT Xt intrinsics manual, by the same authors.
Baldwin, Howard, "What Gives An X Terminal X Appeal?," _U_N_I_X _W_o_r_l_d, vol. 8,
no. 5, pp. 89-94, May, 1991. A look at the popular features of X ter-
minals.
Barkakati, Nabajyoti, _X _W_i_n_d_o_w _S_y_s_t_e_m _P_r_o_g_r_a_m_m_i_n_g, SAMS, 1991. ISBN 0-
672-22750-9. Another tutorial on X programming. The Xlib section is
not as good as Jones' book. There's a short section at the end on mix-
ing Xlib with the X Toolkit, but the programming style used there is
poor.
Barkakati, Nabajyoti, _U_N_I_X _D_e_s_k_t_o_p _G_u_i_d_e _t_o _X/_M_O_T_I_F, Hayden Books, 1992.
ISBN 0-672-22836. Not yet reviewed.
Bartlett, Joel F., "Don't Fidget with Widgets, Draw!," DEC Western Research
Laboratory Research Report 91/6, May, 1991. Describes EZD, a high-
level graphics server that simplifies the development of interactive
graphical user interfaces. EZD is based on X. For information on ob-
taining free copies of this report, send electronic mail to ``wrl-
techreports@decwrl.dec.com''. Your message should contain the single
word ``help''.
Bass, Len, Erik Hardy, Reed Little, and Robert Seacord, "Serpent Overview,"
CMU/SEI-89-UG-2, Software Engineering Institute, Carnegie Mellon
University, Pittsburgh, PA.. An overview and tutorial of the Serpent
User Interface Management System. Serpent is a UIMS implemented on
top of several X toolkits. This paper, as well as the Serpent source
code, is included in the MIT X11R4 distribution.
Bass, Len and et al, "Serpent: A User Interface Management System," in
_P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _W_i_n_t_e_r, _1_9_9_0 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 245-258. An
introduction to the Serpent UIMS from Carnegie Mellon University.
Berlage, Thomas, _O_S_F/_M_o_t_i_f: _C_o_n_c_e_p_t_s _a_n_d _P_r_o_g_r_a_m_m_i_n_g, Addison-Wesley, 1991.
ISBN 0-201-55792-4. A good tutorial on Motif programming. It doesn't
include lots of toy examples like some of the other books, but there
are good practical examples and the descriptions of the widget func-
tionality (especially the constraint widgets) are excellent. The sec-
tion on subclassing Motif (mostly XmPrimitive) widget classes is not
real complete, but still is far better than those in other Motif
books. There is an introductory section on UIL, which is easier to
understand, though not as complete as the section in the Motif
programmer's guide. This book does not contain a tutorial on the X
Toolkit intrinsics, so you will probably want Asente & Swick's book
- 3 -
for that.
Blewett, Doug, "X Widget Based Software Tools for UNIX," in _P_r_o_c_e_e_d_i_n_g_s _o_f
_t_h_e _W_i_n_t_e_r, _1_9_9_2 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 111-123. Describes small
language and IPC protocol for creating small X-based software utili-
ties and filters.
Borenstein, Nathaniel S., _M_u_l_t_i_m_e_d_i_a _A_p_p_l_i_c_a_t_i_o_n_s _D_e_v_e_l_o_p_m_e_n_t _w_i_t_h _t_h_e _A_n_-
_d_r_e_w _T_o_o_l_k_i_t, Prentice Hall, 1990. ISBN 0-13-036633-1. A tutorial and
reference manual for the Andrew toolkit. Andrew is an applications
toolkit implemented on several window systems, including X. It is in-
cluded in the MIT X11R4 distribution.
Bourne, Philip E. and Lawrence S. Shapiro, "Developing with DECwindows,"
_D_E_C _P_r_o_f_e_s_s_i_o_n_a_l, vol. 9, no. 2, pp. 36-44, February, 1990. A
description of DECwindows programming, focusing on the User Interface
Language (UIL). UIL is used by both DECwindows and OSF/Motif.
Braca, Mike, "X Display Management," _U_N_I_X _W_o_r_l_d, vol. 8, no. 4, pp. 107-
112, April, 1991. An introduction to the X Display Manager Control
Protocol (XDMCP).
Braca, Mike, "Configuring X Display Management," _U_N_I_X _W_o_r_l_d, vol. 8, no. 5,
pp. 113-123, May, 1991. A guide to using the ``xdm'' client.
Brain, Marshall, _M_o_t_i_f _P_r_o_g_r_a_m_m_i_n_g: _T_h_e _E_s_s_e_n_t_i_a_l_s ..., Digital Press,
1992. ISBN 0-13-489378-6 A tutorial on Motif programming. I haven't
read it yet, but others have given it mixed reviews.
Brunhoff, Todd, "Pleasing The Eye," _U_N_I_X _R_e_v_i_e_w, vol. 7, no. 10, pp. 64-72.
An introduction to VEX, a proposed (and since withdrawn) video exten-
sions to X.
Burgard, Mike, "Serving Up X From a PC," _U_N_I_X _W_o_r_l_d, vol. 8, no. 11, pp.
99-108, November, 1991. A review of three products that allow you to
run X under Microsoft Windows on IBM PCs.
Calder, Paul R. and Mark Linton, "Glyphs: Flyweight Objects for User In-
terfaces," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _A_C_M _S_I_G_G_R_A_P_H _S_y_m_p_o_s_i_u_m _o_n _U_s_e_r _I_n_t_e_r_-
_f_a_c_e _S_o_f_t_w_a_r_e _a_n_d _T_e_c_h_n_o_l_o_g_y, October, 1990. Some new user interface
objects for InterViews, a C++ based toolkit for X.
Champine, George, Bob Scheifler, Jim Gettys, Georges Grinstein, and Bertram
Herzog, "Panel discussion on the X Window System," in _S_I_G_G_R_A_P_H'_8_8
_P_a_n_e_l _P_r_o_c_e_e_d_i_n_g_s, August, 1988. This is the transcript of an in-
teresting panel discussion on X. George Champine was moderator. Panel-
ists were Bob Scheifler, Jim Gettys, Georges Grinstein, and Bertram
Herzog. The panelists discussed the history of X and current work
at/on the X Consortium, PEX, and national and international standards
for X. This was followed by a lively question and answer session on
the present and future of X.
Champine, George, _M_I_T _P_r_o_j_e_c_t _A_t_h_e_n_a: _A _M_o_d_e_l _f_o_r _D_i_s_t_r_i_b_u_t_e_d _C_a_m_p_u_s _C_o_m_-
_p_u_t_i_n_g, Digital Press, 1991. A review of Project Athena, which gen-
- 4 -
erated lots of fun toys, including the X Window System.
Clifford, William, John McConnell, and Jeffrey Friedberg, "The Development
of PEX, A Three-dimensional Graphics Extension to X11," in _P_r_o_c_e_e_d_i_n_g_s
_o_f _E_u_r_o_g_r_a_p_h_i_c_s'_8_8, September, 1988. An overview PEX, an extension to
the X protocol to support PHIGS+.
Dardailler, D., "Tips for Writing Motif-based Graphical Applications," in
_X_h_i_b_i_t_i_o_n'_9_2 _C_o_n_f_e_r_e_n_c_e _P_r_o_c_e_e_d_i_n_g_s, pp. 207-216. Some Motif program-
ming hints, mostly for the drawing area and scrolled window widgets.
Davison, Allan, Kieron Drake, William Roberts, and Mel Slater, _D_i_s_t_r_i_b_u_t_e_d
_W_i_n_d_o_w _S_y_s_t_e_m_s: _A _P_r_a_c_t_i_c_a_l _G_u_i_d_e _t_o _X_1_1 _a_n_d _O_p_e_n _W_i_n_d_o_w_s, Addison-
Wesley, 1992. To be published in December, 1992. An introduction to X
and Open Windows. Not yet reviewed.
Dolan, Michael A. and Larry Hare, "X Window System Servers in Embedded Sys-
tems," in _P_r_o_c_e_e_d_i_n_g_s _o_f _C_O_M_P_C_O_N _S_p_r_i_n_g _1_9_9_0, pp. 314-319, February,
1990. A discussion of X server architectures for embedded systems,
such as accelerator boards and stand-alone terminals.
Droms, Ralph and Wayne Dyksen, "Performance Measurements of the X Window
System Protocol," _S_o_f_t_w_a_r_e _P_r_a_c_t_i_c_e _a_n_d _E_x_p_e_r_i_e_n_c_e, vol. 20, no. S2,
October, 1990 A analysis of the performance of the X protocol over
TCP/IP networks..
Epstein, Jeremy and Marvin Shugerman, "A Trusted X Window System Server for
Trusted Mach," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _F_i_r_s_t _U_S_E_N_I_X _M_a_c_h _W_o_r_k_s_h_o_p, Oc-
tober, 1990. Describes the prototype of a B3-level Trusted X.
Flowers, Ken, "Using Motif's User Interface Language," _U_N_I_X _W_o_r_l_d, vol. 7,
no. 12, pp. 119-131, December, 1990. A basic tutorial the Motif User
Interface Language (UIL). UIL is a meta-language for specifying Motif
widget resources and hierarchies. It allows much of a program's user
interface to be developed independently of the rest of the program's
functionality.
Flowers, Ken, "Programming with the Motif Toolkit," _U_N_I_X _W_o_r_l_d, vol. 7, no.
11, pp. 135-144, November, 1990. A basic tutorial on X Toolkit pro-
gramming using the Motif widget set. The article focuses on the vari-
ous Motif widgets, assuming that the reader understands the basics of
using the X Toolkit.
Gajewska, Hania, Mark Manasse, and Joel McCormack, "Why X is Not Our Ideal
Window System," _S_o_f_t_w_a_r_e _P_r_a_c_t_i_c_e _a_n_d _E_x_p_e_r_i_e_n_c_e, vol. 20, no. S2, Oc-
tober, 1990. Some comments on problems with the design of the X Win-
dow System.
Gaskins, Tom, _P_H_I_G_S _P_r_o_g_r_a_m_m_i_n_g _M_a_n_u_a_l: _3_D _P_r_o_g_r_a_m_m_i_n_g _i_n _X, O'Reilly & As-
sociates, 1992. ISBN 0-937175-85-4 (soft), 0-937175-92-7 (hard). The
only PHIGS book written specifically for PEX-based implementations.
Gettys, Jim, "Problems Implementing Window Systems in UNIX," in _P_r_o_c_e_e_d_i_n_g_s
_o_f _t_h_e _W_i_n_t_e_r, _1_9_8_6 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 89-97. Describes some of
- 5 -
the early work on X, especially technical issues in implementing
server-based window systems on UNIX systems.
Gettys, Jim, "Network Windowing using the X Window System," _D_r. _D_o_b_b'_s
_J_o_u_r_n_a_l, pp. 42-53, March, 1989. A discussion on the importance of
networking for window systems.
Gettys, Jim, Phil Karlton, and Scott McGregor, "The X Window System, Ver-
sion 11," _S_o_f_t_w_a_r_e _P_r_a_c_t_i_c_e _a_n_d _E_x_p_e_r_i_e_n_c_e, vol. 20, no. S2, October,
1990. A technical overview of the X11 functionality. This is an up-
date of the X10 TOG paper by Scheifler & Gettys.
Good, Michael, "User Interface Consistency in the DECwindows Program," in
_P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _H_u_m_a_n _F_a_c_t_o_r_s _S_o_c_i_e_t_y, _V_o_l. _1, 1988. A discussion
of user interface design techniques used in developing the DECwindows
toolkit.
Greenwood, Stephen, "The DECwindows User Interface Language," _D_i_g_i_t_a_l
_T_e_c_h_n_i_c_a_l _J_o_u_r_n_a_l, vol. 2, no. 3, pp. 34-43, Summer, 1990. An over-
view of the DECwindows user interface language (UIL). UIL allows pro-
grammers to specify and configure the X Toolkit widget hierarchy at
run-time. This is very useful for rapid prototyping and international-
ization. UIL is used by both DECwindows and Motif.
Gregory, K. D., _P_r_o_g_r_a_m_m_i_n_g _w_i_t_h _M_o_t_i_f, O'Reilly & Associates, 1992. ISBN
0-387-97877-1. A basic tutorial on using Motif widgets. Not yet re-
viewed.
Hayes, Frank, "X Terminals vs. Diskless Workstations," _U_N_I_X _W_o_r_l_d, vol. 7,
no. 10, pp. 83-86, October, 1990. A look at some of the tradeoffs
between using X terminals and diskless workstations.
Heller, Dan, "The XView Toolkit (2 parts)," _U_N_I_X _W_o_r_l_d, vol. 7, no. 6-7,
June-July, 1990. A two part tutorial on XView, based on Volume 7 of
the O'Reilly series. XView, from Sun, is a user interface toolkit for
X. It is similar to, but not compatible with (at either the end-user
or the programmer levels), MIT's X Toolkit. It supports Open Look, but
not Motif.
Heller, Dan, "Handling UNIX Signals in X Applications," _T_h_e _X _J_o_u_r_n_a_l, vol.
1, no. 4, pp. 17-22, March, 1991. A tutorial on safely using UNIX
signals within X clients. This article has been somewhat controver-
sial. See the letters to the editor in the next issue of this maga-
zine before trying any of these techniques.
Heller, Dan, "Multimedia Applications Under the X Window System," _T_h_e _X
_J_o_u_r_n_a_l, vol. 2, no. 1, pp. 12-19, September, 1992. A look at possi-
ble combinations of multimedia and X.
Hesketh, Richard, "Perly --- UNIX with Buttons," _S_o_f_t_w_a_r_e _P_r_a_c_t_i_c_e _a_n_d _E_x_-
_p_e_r_i_e_n_c_e, vol. 21, no. 11, November, 1991. Another buttons toolkit
for UNIX and X. See also the Robertson paper.
- 6 -
Holzgang, David A., _D_i_s_p_l_a_y _P_o_s_t_S_c_r_i_p_t _P_r_o_g_r_a_m_m_i_n_g, Addison-Wesley, 1990.
ISBN 0-201-51814-7. A tutorial on Display PostScript. Many commercial
X implementations include DPS as an extension to the core X protocol.
DPS can be used in conjunction with or instead of the core X graphics
requests.
Hopgood, F. R. A., _M_e_t_h_o_d_o_l_o_g_y _o_f _W_i_n_d_o_w _M_a_n_a_g_e_m_e_n_t, Springer-Verlag, New
York, 1986. ISBN 0-387-16116-3. The proceedings of the important
1985 Alvey Workshop on Window Management. It includes interesting ma-
terial on problems with UNIX window systems and proposed solutions. It
also includes descriptions of early versions of current UNIX window
systems, such as X and Sun's NeWS.
Israel, Elias and Erik Fortune, _T_h_e _X _W_i_n_d_o_w _S_y_s_t_e_m _S_e_r_v_e_r, Digital Press,
1992. ISBN 1-55558-096-3. A technical reference on the internals of
the X11R5 sample server, including the core architecture, porting and
tuning techniques, and extension techniques. This is the only publi-
cally available book on the X server.
Johnson, Eric and Kevin Reichard, _A_d_v_a_n_c_e_d _X _W_i_n_d_o_w _A_p_p_l_i_c_a_t_i_o_n_s _P_r_o_g_r_a_m_-
_m_i_n_g, MIS: Press, 1990. ISBN 1-55828-016-2. An "advanced" version of
the authors' previous book.
Johnson, Eric and Kevin Reichard, _P_o_w_e_r _P_r_o_g_r_a_m_m_i_n_g _w_i_t_h _M_o_t_i_f, MIS: Press,
1991. ISBN 1-55828-059-6. Another tutorial on Motif application pro-
gramming. It does not cover subclassing widgets or using the UIL in-
terface. Coverage is generally poorer than similar books, especially
Berlage's book.
Johnson, Eric and Kevin Reichard, _X _W_i_n_d_o_w _A_p_p_l_i_c_a_t_i_o_n_s _P_r_o_g_r_a_m_m_i_n_g, _s_e_c_o_n_d
_e_d_i_t_i_o_n, MIS: Press, 1992. ISBN 1-55828-178-9. The first edition of
this book had several significant flaws. The second edition is sup-
posedly improved, but has not yet been reviewed.
Jones, Oliver, _I_n_t_r_o_d_u_c_t_i_o_n _t_o _t_h_e _X _W_i_n_d_o_w _S_y_s_t_e_m, Prentice-Hall, 1989.
ISBN 0-13-499997-5. An excellent introduction to programming with
Xlib. Written with the serious programmer in mind, this book includes
many practical tips that are not found anywhere else. While the others
simply regurgitate that material in the MIT manuals, this book ex-
plains key Xlib concepts much more clearly and gives examples of using
X to solve real world problems. The seventh printing is updated to
X11R4.
Kataoka, Yutaka and et al, "A Model for Input and Output of Multilingual
Text in a Windowing Environment," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _A_C_M _S_I_G_G_R_A_P_H
_S_y_m_p_o_s_i_u_m _o_n _U_s_e_r _I_n_t_e_r_f_a_c_e _S_o_f_t_w_a_r_e _a_n_d _T_e_c_h_n_o_l_o_g_y, pp. 175-183, No-
vember, 1991.
Keller, Brian J., _A _P_r_a_c_t_i_c_a_l _G_u_i_d_e _t_o _X _W_i_n_d_o_w _P_r_o_g_r_a_m_m_i_n_g, CRC Press,
1990. ISBN 0-8493-7406-5. Another tutorial on X application writing.
This one claims to use the X Toolkit and Motif, though the Motif ma-
terial is not very good.
- 7 -
Kent, Christopher, "XDPS: A Display PostScript System Extension for
DECwindows," _D_i_g_i_t_a_l _T_e_c_h_n_i_c_a_l _J_o_u_r_n_a_l, vol. 2, no. 3, pp. 64-73, Sum-
mer, 1990. An overview of Display PostScript, an extension to the X
protocol allowing PostScript graphics in X windows.
Kimball, Paul, _T_h_e _X _T_o_o_l_k_i_t _C_o_o_k_b_o_o_k, Prentice-Hall, 1991. Not yet re-
viewed. Reportedly a practical guide to X Toolkit programming, includ-
ing use of the Motif, Open Look, and Athena widget sets.
Kobara, Shiz, _V_i_s_u_a_l _D_e_s_i_g_n _W_i_t_h _O_S_F/_M_o_t_i_f, Addison-Wesley, 1991. ISBN 0-
201-56320-7. A guide to using Motif to create visually appealing and
consistent user interfaces, by one of the user interface designers who
helped create the Motif look.
Labs, UNIX System, _O_p_e_n _L_o_o_k _R_e_l_e_a_s_e _4 _G_r_a_p_h_i_c_a_l _U_s_e_r _I_n_t_e_r_f_a_c_e:
_P_r_o_g_r_a_m_m_e_r'_s _G_u_i_d_e, Prentice-Hall, 1991. A programmer's guide for the
Open Look Intrinsics Toolkit (OLIT). OLIT is a widget set for the X
Toolkit intrinsics. OLIT is not compatible with XView.
LaStrange, Tom E., "swm: An X Window Manager Shell," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e
_S_u_m_m_e_r, _1_9_9_0 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 299-306. Describes the swm window
manager, supporting a configurable user interface and a virtual root
window.
Lee, Kenton, "Behind Curtain X," _U_N_I_X _R_e_v_i_e_w, vol. 9, no. 6, pp. 22-28,
June, 1991. Despite the title, this article really describes (most
of) the most common X programming errors and ways to avoid them.
Lee, Kenton, "Twenty Quesions with Paul Asente," _T_h_e _X _J_o_u_r_n_a_l, vol. 1, no.
2, pp. 12-17, November, 1991. An interview with one of the X
Toolkit's designers. He discusses its history and his vision for its
future.
Lee, Kenton, "Graphics Effects by X Colormap Manipulation," _T_h_e _X _J_o_u_r_n_a_l,
vol. 1, no. 5, May, 1992. Most X applications generate graphics
through X raster drawing functions. This paper discusses some powerful
techniques for generating graphics by manipulating the colormap in ad-
dition to or in place of raster drawing. Detailed examples include
overlay planes and double buffer animation.
Leffler, Samuel J., "A Window On The Future?," _U_N_I_X _R_e_v_i_e_w, vol. 6, no. 6,
pp. 62-69. This article compares Sun's NeWS with other window sys-
tems, such as X, and concludes that, despite its problems, NeWS is the
window system of the future. See Robin Schaufler's paper for a more
technical comparison of the X and NeWS.
Lemke, David and David S. H. Rosenthal, "Visualizing X11 Clients," in
_P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _S_u_m_m_e_r, _1_9_8_8 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 125-138. A tu-
torial on ``visuals'', the X abstraction of display hardware capabili-
ties. Proper use of visuals is necessary for an X client to work with
and take advantage of a variety of different display devices. An up-
dated version is included in the MIT X11R5 distribution
(X11R5/mit/doc/tutorials/visuals).
- 8 -
Levitt, Jason, "Spotlight on Serial X Terminals," _U_N_I_X _T_o_d_a_y, pp. 46-52,
May 13, 1991. A review of some X terminals that support serial proto-
cols. This type of terminal can be used with a modem over a telephone
line.
Levitt, Jason, "Windows, X Servers Collide," _O_p_e_n _S_y_s_t_e_m_s _T_o_d_a_y, March 2,
1992. A comparison of the functionality and performance of six X
servers for PCs running Microsoft Windows.
Linton, Mark and Paul Calder, "The Design and Implementation of Inter-
Views," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _1_9_8_7 _U_S_E_N_I_X _C++ _W_o_r_k_s_h_o_p, 1987.
Describes the InterViews user interface toolkit, written in C++ and
based on the X Window System. Even if you don't plan to use Inter-
Views as a toolkit, it provides a good C++ binding to the X protocol.
Linton, Mark A., John M. Vlissides, and Paul R. Calder, "Composing User In-
terfaces with InterViews," _I_E_E_E _C_o_m_p_u_t_e_r, vol. 22, no. 8, pp. 8-22,
February, 1989. Describes the InterViews user interface toolkit,
written in C++ and based on the X Window System.
Mansfield, Niall, _T_h_e _X _W_i_n_d_o_w _S_y_s_t_e_m: _A _U_s_e_r'_s _G_u_i_d_e, Addison-Wesley, Am-
sterdam A tutorial on X for end-users, not programmers. The second
edition is based on X11R4., 1991.
Mayer, Niels P., "The WINTERP Widget INTERpreter," _L_I_S_P _P_o_i_n_t_e_r_s, vol. 4,
no. 1, pp. 45-60, July, 1990. Discusses WINTERP, a Lisp prototyping
environment for Motif applications.
McCormack, Joel and Paul Asente, "Using the X Toolkit or How to Write a
Widget," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _S_u_m_m_e_r, _1_9_8_8 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 1-
13. An excellent tutorial on writing basic X Toolkit widgets. Poten-
tial widget writers (and maybe users, too) should probably start by
reading this paper. Unfortunately, it's based on X11R2, so some of it
is out of date.
McCormack, Joel and Paul Asente, "An Overview of the X Toolkit," in
_P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _A_C_M _S_I_G_G_R_A_P_H _S_y_m_p_o_s_i_u_m _o_n _U_s_e_r _I_n_t_e_r_f_a_c_e _S_o_f_t_w_a_r_e,
pp. 46-55, October, 1988. An excellent architectural overview of the
X Toolkit, including its goals, how it accomplished them, and possible
future directions.
McCormack, Joel, "Writing Fast X Servers for Dumb Color Frame Buffers," DEC
Western Research Laboratory Research Report 91/1, February, 1991.
Describes the implementation of one of the best X servers currently
available, that of the color DECstation 3100. Algorithms as well as
performance measurements are discussed. For information on obtaining
free copies of this report, send electronic mail to ``wrl-
techreports@decwrl.dec.com''. Your message should contain the single
word ``help''. Note that this paper supersedes DECWRL TN-9. This paper
also appears in the Software Practice and Experience Volume 20, Spe-
cial Issue S2.
McGregor, Scott, "An Overview of the DECwindows Architecture," _D_i_g_i_t_a_l
_T_e_c_h_n_i_c_a_l _J_o_u_r_n_a_l, vol. 2, no. 3, pp. 9-15, Summer, 1990. An overview
- 9 -
of DECwindows, a superset of X for DEC workstations.
McLoughlin, Lee, "A Simple Guide to Porting the X Window System," in
_P_r_o_c_e_e_d_i_n_g_s _o_f _E_U_U_G _S_p_r_i_n_g _1_9_8_9, pp. 283-291, Brussels, April 3-7,
1989. A brief, but good, discussion of the interface between the X
server and the underlying operating system. The EUUG conference is
sponsored by the European Unix Users' Group.
McMinds, Donald L., _M_a_s_t_e_r_i_n_g _O_S_F/_M_o_t_i_f _W_i_d_g_e_t_s, _S_e_c_o_n_d _E_d_i_t_i_o_n, Addison-
Wesley, 1992. ISBN 0-201-63335-3. A tutorial on using existing Motif
widgets. The second edition is much improved from the first and covers
Motif 1.2.
McNutt, Dinah, "Administering X Sites," _U_N_I_X _R_e_v_i_e_w, vol. 10, no. 7, pp.
45-48, July, 1992. A review of some X configuration and administra-
tion issues.
Mehta, Sunil, "User Interfaces and the IEEE P1201 Committee," _U_N_I_X _R_e_v_i_e_w,
vol. 8, no. 1, pp. 14-20. A review of the activities of the IEEE
P1201 standards committee, by its chairman. P1201 is trying to develop
international standards for the X Window System client side (Xlib and
above). Lower levels of X (servers and protocol) are being standard-
ized by ANSI Task Group X3H3.6.
Mikes, Steve, "Fast Track To Motif Applications," _U_N_I_X _W_o_r_l_d, vol. 8, no.
3, pp. 101-106, March, 1991. This article reviews a couple of pro-
ducts that help programmers to quickly port dumb terminal applications
to X and Motif. Some would call this approach a hack, but it is easy
and does provide some functionality beyond dumb terminal emulators.
Mikes, Steven, _X _W_i_n_d_o_w _S_y_s_t_e_m _T_e_c_h_n_i_c_a_l _R_e_f_e_r_e_n_c_e, Addison-Wesley, 1990.
ISBN 0-201-52370-1. A quick reference manual for X11R3, including
Xlib, Xt, fonts, bitmaps, keysyms, Motif, and OPEN LOOK.
Mikes, Steven, "New Ways to Program in Object-Oriented X," _U_N_I_X _W_o_r_l_d, vol.
8, no. 8, pp. 103-108, August, 1991. Reviews the Saber and Solbourne
object-oriented user interface toolkits. Both are based on C++ and
support X.
Mikes, Steven, _X _W_i_n_d_o_w _S_y_s_t_e_m _P_r_o_g_r_a_m _D_e_s_i_g_n _a_n_d _D_e_v_e_l_o_p_m_e_n_t, Addison-
Wesley, 1992. ISBN 0-201-55077-6. Not yet reviewed.
Miller, John David, _A_n _O_P_E_N _L_O_O_K _a_t _U_N_I_X: _A _D_e_v_e_l_o_p_e_r'_s _G_u_i_d_e _t_o _X, M&T
Books, 1990. ISBN 1-55-851057-5. A tutorial on the Open Look widget
set from AT&T. Contact M&T Books at 1-800-533-4372.
Mirchandani, Dinesh and Prabuddha Biswas, "Ethernet Performance of Remote
DECwindows Applications," _D_i_g_i_t_a_l _T_e_c_h_n_i_c_a_l _J_o_u_r_n_a_l, vol. 2, no. 3,
pp. 84-94, Summer, 1990. Describes a methodology for analyzing the
performance of networked X applications.
Morisaki, Masato and et al, "XJp System: An Internationalized Language In-
terface for the X Window System," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _A_C_M _S_I_G_G_R_A_P_H
_S_y_m_p_o_s_i_u_m _o_n _U_s_e_r _I_n_t_e_r_f_a_c_e _S_o_f_t_w_a_r_e _a_n_d _T_e_c_h_n_o_l_o_g_y, pp. 185-193, No-
- 10 -
vember, 1991. An overview of the XJp system, a multi-byte input sys-
tem for X. Multi-byte input is especially important for Asian charac-
ter sets, such as Kanji.
Myers, Brad A., "Window Interfaces: A Taxonomy of Window Manager User In-
terfaces," _I_E_E_E _C_o_m_p_u_t_e_r _G_r_a_p_h_i_c_s & _A_p_p_l_i_c_a_t_i_o_n_s, vol. 8, no. 5, pp.
65-84, September, 1988. A taxonomy of current window system user in-
terfaces, including the UWM window manager for X. Discusses and com-
pares the features of each user interface. Contrast this with Rob
Pike's window system user interface guidelines. Myers is a well known
user interface researcher.
Nadeau, David R., "High-Performance 3-D Graphics In A Window Environment,"
_C_o_m_p_u_t_e_r _T_e_c_h_n_o_l_o_g_y _R_e_v_i_e_w, pp. 89-93, Fall, 1988. A discussion on
integrating Megatek's high-performance 3D graphics hardware/software
with X.
Newmarch, Jan, _X _W_i_n_d_o_w_s _a_n_d _M_o_t_i_f: _A _F_a_s_t _T_r_a_c_k _A_p_p_r_o_a_c_h, Addison-Wesley,
1992. To be published in November, 1992. An overview of X and Motif.
Not yet reviewed.
Nye, Adrian, "The X Window System Protocol," _U_N_I_X _W_o_r_l_d, vol. 6, no. 9, pp.
105-113, September, 1989. An introduction to the X protocol. This is
a short version of Nye's introduction to Volume 0 of O'Reilly's X
series.
O'Reilly and Associates, _D_e_f_i_n_i_t_i_v_e _G_u_i_d_e_s _t_o _t_h_e _X _W_i_n_d_o_w _S_y_s_t_e_m, O'Reilly
and Associates, 1988-1992. There are three main types of books in
this series: "programmers manuals" (programmer tutorials), "reference
manuals" (man pages), and "user guides" (end-user tutorisls). The
volumes in this series are: _V_o_l. _0: _X _P_r_o_t_o_c_o_l _R_e_f_e_r_e_n_c_e _M_a_n_u_a_l, _V_o_l.
_1: _X_l_i_b _P_r_o_g_r_a_m_m_i_n_g _M_a_n_u_a_l, _V_o_l. _2: _X_l_i_b _R_e_f_e_r_e_n_c_e _M_a_n_u_a_l, _V_o_l. _3:
_X _W_i_n_d_o_w _S_y_s_t_e_m _U_s_e_r'_s _G_u_i_d_e, _V_o_l. _3_M: _X _W_i_n_d_o_w _S_y_s_t_e_m _U_s_e_r'_s _G_u_i_d_e
(_M_o_t_i_f _E_d_i_t_i_o_n), _V_o_l. _4: _X _T_o_o_l_k_i_t _I_n_t_r_i_n_s_i_c_s _P_r_o_g_r_a_m_m_e_r_s _M_a_n_u_a_l,
_V_o_l. _4_M: _X _T_o_o_l_k_i_t _I_n_t_r_i_n_s_i_c_s _P_r_o_g_r_a_m_m_e_r_s _M_a_n_u_a_l (_M_o_t_i_f _E_d_i_t_i_o_n),
_V_o_l. _5: _X _T_o_o_l_k_i_t _I_n_t_r_i_n_s_i_c_s _R_e_f_e_r_e_n_c_e _M_a_n_u_a_l, _V_o_l. _6: _M_o_t_i_f _P_r_o_-
_g_r_a_m_m_i_n_g _M_a_n_u_a_l, _V_o_l. _7: _X_V_i_e_w _P_r_o_g_r_a_m_m_i_n_g _M_a_n_u_a_l, _V_o_l. _7 _C_o_m_p_a_n_i_o_n:
_X_V_i_e_w _R_e_f_e_r_e_n_c_e _M_a_n_u_a_l, _V_o_l. _8: _X _W_i_n_d_o_w _S_y_s_t_e_m _A_d_m_i_n_i_s_t_r_a_t_o_r'_s
_G_u_i_d_e, and _V_o_l. _R_5 _U_p_d_a_t_e: _P_r_o_g_r_a_m_m_e_r'_s _S_u_p_p_l_e_m_e_n_t _f_o_r _X_1_1_R_5. Some
like these books' broad coverage: most interfaces are covered, usually
with examples. Others dislike the sometimes shallow coverage of com-
plex subjects. Some of the material is biased towards the programming
styles of authors, though this is apparently changing. These books
are quickly updated to cover new MIT releases and recent editions are
much improved over older ones.
O'Reilly and Associates, _T_h_e _X _W_i_n_d_o_w _S_y_s_t_e_m _i_n _a _N_u_t_s_h_e_l_l, O'Reilly and
Associates, 1992. ISBN ISBN 1-56592-017-1. A quick reference guide to
Xlib and Xt and some associated configuration files. It has separate
sections on events, data structures, and other frequently needed ma-
terial. It leaves out a lot of detail in order to achieve a small,
convenient size. The second edition, based on X11R5, is much improved
over the first edition.
- 11 -
Open Software Foundation, _O_S_F/_M_o_t_i_f _S_e_r_i_e_s (_5 _v_o_l_u_m_e_s), Prentice Hall,
1992. Motif is a popular user interface programming environment for
X. It was designed and developed by members of the Open Software Foun-
dation, including DEC, HP, and IBM. These companies have committed to
using Motif as their standard user interface. The volumes in this
series include the Motif _S_t_y_l_e _G_u_i_d_e, _P_r_o_g_r_a_m_m_e_r'_s _G_u_i_d_e, _P_r_o_g_r_a_m_m_e_r'_s
_R_e_f_e_r_e_n_c_e, _U_s_e_r'_s _G_u_i_d_e, and _A_p_p_l_i_c_a_t_i_o_n _E_n_v_i_r_o_n_m_e_n_t _S_p_e_c_i_f_i_c_a_t_i_o_n
(_A_E_S) _U_s_e_r _E_n_v_i_r_o_n_m_e_n_t _V_o_l_u_m_e. The latest editions of these books are
for Motif Release 1.2. The original 1.0 versions of some of these left
something to be desired, but they were significantly improved for 1.1
and again for 1.2.
Ousterhout, John K., "An X11 Toolkit Based on the Tcl Language," in
_P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _W_i_n_t_e_r, _1_9_9_1 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 105-115.
Describes a high level toolkit based on the Tcl programming language.
Since Tcl is interpreted, this toolkit allows for some interesting
run-time dynamics. Unfortunately, it is not compatible with the X
Toolkit and popular widget sets.
Pausch, Randy and et al, "SUIT: The Pascal of User Interface Toolkits," in
_P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _A_C_M _S_I_G_G_R_A_P_H _S_y_m_p_o_s_i_u_m _o_n _U_s_e_r _I_n_t_e_r_f_a_c_e _S_o_f_t_w_a_r_e
_a_n_d _T_e_c_h_n_o_l_o_g_y, November, 1991. Describes SUIT, a simple user inter-
face toolkit. It's primary motivation is to be easy for student pro-
grammers to learn. Versions run on X, Macintosh, DOS, and Silicon
Graphics window systems.
Pedneault, Michel, "A High-Level User Interface Toolkit for the X Window
System and Character Terminals," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _S_u_m_m_e_r, _1_9_9_0
_U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 307-313. Describes the NTUI toolkit, which
supports a single programming interface for both graphical (using the
X Toolkit) and character user interfaces.
Peterson, C. and S. S. Chang, "Improving the Performance of X Applica-
tions," in _X_h_i_b_i_t_i_o_n'_9_2 _C_o_n_f_e_r_e_n_c_e _P_r_o_c_e_e_d_i_n_g_s, pp. 93-100. Some pro-
gramming techniques to improve client performance.
Pike, Rob, "Window Systems Should Be Transparent," _U_S_E_N_I_X _C_o_m_p_u_t_i_n_g _S_y_s_-
_t_e_m_s, vol. 1, no. 3, pp. 279-296, Summer, 1988. Some window system
user interface guidelines, based on MUX window system for the BLIT
terminal, with some comparisons to X. Contrast this to Myers' paper.
Pike is the developer of the BLIT.
Pike, Rob, "A Concurrent Window System," _U_S_E_N_I_X _C_o_m_p_u_t_i_n_g _S_y_s_t_e_m_s, vol. 2,
no. 2, pp. 133-153, Spring, 1989. A description of a multi-threaded
window system written using a concurrent programming language. The
design is shown to be simpler than the single threaded design of X.
Probst, Richard, "OPEN LOOK Toolkits," _S_u_n_T_e_c_h_n_o_l_o_g_y, vol. 1, no. 4, pp.
76-86, Autumn, 1988. OPEN LOOK is a user interface specification
designed by AT&T and Sun. This paper discusses toolkits supporting
OPEN LOOK including two for the X Window System.
Raney, Scott, "Pick a GUI, Any GUI," _U_N_I_X _W_o_r_l_d, vol. 8, no. 5, pp. 103-
107, May, 1991. A review of the XVT product. XVT claims to provide a
- 12 -
single API to generate user interfaces for Motif, Macintosh, Presenta-
tion Manager, Open Look, and ASCII terminals. This article says XVT is
appropriate for in-house tools, but not for product quality applica-
tions.
Rao, R. and S. Wallace, "The X Toolkit," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _S_u_m_m_e_r, _1_9_8_7
_U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e. Describes an early version of the X Toolkit.
Raymond, Darrell R., "Flexible Text Display with Lector," _I_E_E_E _C_o_m_p_u_t_e_r,
vol. 25, no. 8, pp. 49-60, August, 1992. Describes Lector, a flexi-
ble, interactive text input/output system for X.
Reichard, Kevin and Eric Johnson, "Drop Dead Programming," _U_N_I_X _R_e_v_i_e_w,
vol. 9, no. 11, pp. 111-114, November, 1991. A brief overview of some
X debugging techniques.
Robertson, George G., D. Austin Henderson, Jr., and Stuart K. Card, "But-
tons as First Class Objects on an X Desktop," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e
_A_C_M _S_I_G_G_R_A_P_H _S_y_m_p_o_s_i_u_m _o_n _U_s_e_r _I_n_t_e_r_f_a_c_e _S_o_f_t_w_a_r_e _a_n_d _T_e_c_h_n_o_l_o_g_y, pp.
35-44, November, 1991. An overview of the XButtons toolkit, which im-
plements a button-oriented user interface paradigm for X and UNIX. See
also the Hesketh paper.
Rochkind, Marc J., "XVT: A Virtual Toolkit for Portability Between Window
Systems," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _W_i_n_t_e_r, _1_9_8_9 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp.
151-163. Describes the Extensible Virtual Toolkit (XVT), a user in-
terface toolkit that claims to provide a uniform application program-
ming interface to several different window systems, while providing
the ``look and feel'' appropriate for the window system. Supported
window systems include X11, Microsoft Windows, OS/2 Presentation
Manager, and the Macintosh.
Rosenberg, Jarrett, Paul Asente, Mark Linton, and Andrew Palay, "X Toolk-
its: The Lessons Learned," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _A_C_M _S_I_G_G_R_A_P_H _S_y_m_p_o_-
_s_i_u_m _o_n _U_s_e_r _I_n_t_e_r_f_a_c_e _S_o_f_t_w_a_r_e _a_n_d _T_e_c_h_n_o_l_o_g_y, pp. 108-111, October,
1990. The proceedings include the prepared statements of panelists at
a panel discussion. Jarrett Rosenberg was moderator. Paul Asente
spoke on the X Toolkit. Mark Linton spoke on InterViews. Andrew
Palay spoke on the Andrew Toolkit.
Rosenthal, David, _I_n_t_e_r-_C_l_i_e_n_t _C_o_m_m_u_n_i_c_a_t_i_o_n _C_o_n_v_e_n_t_i_o_n_s _M_a_n_u_a_l (_I_C_C_C_M),
1988-1991. Interoperability between multiple clients running simul-
taneously is a major feature of the X Window System. Several standard
conventions are needed to maintain this interoperability. These con-
ventions are documented in the ICCCM. Some have said that when experts
answer RTFM to X questions, the 'M' is usually the ICCCM. A copy of
the latest ICCCM is in the MIT X11R5 distribution
(X11R5/mit/doc/ICCCM).
Rosenthal, David S. H., "A Simple X11 Client Program," in _P_r_o_c_e_e_d_i_n_g_s _o_f
_t_h_e _W_i_n_t_e_r, _1_9_8_8 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 229-235. A version of the
``hello, world'' paper, presenting and comparing the basics of the X
library and the X Toolkit. All potential X programmers (Xlib or X
toolkit) should understand everything in this paper before they at-
- 13 -
tempt to write any X programs. Included in the MIT X distribution
(X11R5/doc/tutorials/HelloWorld) and reprinted as ``Going for
Baroque'' in the June or July, 1988 (vol. 6, no. 6) issue of _U_N_I_X _R_e_-
_v_i_e_w magazine.
Rosenthal, David S. H. and Adam R. de Boor, _G_o_d_z_i_l_l_a'_s _G_u_i_d_e _t_o _P_o_r_t_i_n_g _t_h_e
_X _V_1_1 _S_a_m_p_l_e _S_e_r_v_e_r, 1987, 1990. A hackers guide to quick-and-dirty
porting of the sample server to memory-mapped monochrome and color
frame buffers. This document is included in the MIT X11R5 distribution
(X11R5/mit/doc/Server).
Rosenthal, David S. H., "Window Exchange," _U_N_I_X _R_e_v_i_e_w, vol. 7, no. 12, pp.
58-64, January, 1990. An excellent review of X client interoperabili-
ty problems, by the author of the X Inter-Client Communication Conven-
tions Manual (ICCCM). About half the paper discusses differences among
servers that an application writer must understand. The other half
discusses (ICCCM) issues such as selections and dealing with the win-
dow manager.
Rost, Randi, "Adding A Dimension to X," _U_N_I_X _R_e_v_i_e_w, vol. 6, no. 10, pp.
51-59. An overview of PEX.
Rost, Randi, Jeffrey Friedberg, and Peter Nishimoto, "PEX: A Network-
Transparent 3D Graphics System," _I_E_E_E _C_o_m_p_u_t_e_r _G_r_a_p_h_i_c_s & _A_p_p_l_i_c_a_-
_t_i_o_n_s, pp. 14-26, July, 1989. A good overview of PEX, the
PHIGS/PHIGS+ 3D extension to X.
Rost, Randi J., _X _a_n_d _M_o_t_i_f _Q_u_i_c_k _R_e_f_e_r_e_n_c_e _G_u_i_d_e, Digital Press, 1990.
ISBN 1-55558-052-1. A quick reference guide to Xlib, the X Toolkit,
and Motif. It's a little bulkier than the O'Reilly quick reference,
but the cross referencing is much better. An X11R5 version will be
available shortly.
Ryan, Michael and James VanGilder, "The Development of DECwindows VMS
Mail," _D_i_g_i_t_a_l _T_e_c_h_n_i_c_a_l _J_o_u_r_n_a_l, vol. 2, no. 3, pp. 74-83, Summer,
1990. Describes the engineering and development of a moderate sized X
application.
Schaufler, Robin, "X11/NeWS Design Overview," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _S_u_m_m_e_r,
_1_9_8_8 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 23-35. Discusses Sun's X/NeWS window sys-
tem. Compares the functionality of X and NeWS and describes a server
that merges the two.
Scheifler, Bob, "What's New In Release 5," _T_h_e _X _R_e_s_o_u_r_c_e, vol. 0, pp. 7-
15, Fall, 1991. An overview of the new features in X11R5.
Scheifler, Robert and Jim Gettys, "The X Window System," _A_C_M _T_r_a_n_s_a_c_t_i_o_n_s
_o_n _G_r_a_p_h_i_c_s, vol. 5, no. 2, pp. 79-109, April, 1986. The first pub-
lished description of X, describing X10. This paper, along with an up-
dated version describing X11, also appears in the Software Practice
and Experience Volume 20, Special Issue S2.
Scheifler, Robert and James Gettys, _X _W_i_n_d_o_w _S_y_s_t_e_m, _T_h_i_r_d _E_d_i_t_i_o_n, Digital
Press, 1992. ISBN 1-555558-088-2. The Xlib and X protocol bible by
- 14 -
the authors of X11. The third edition is a superset of the MIT docu-
mentation on X11R5 Xlib, X protocol, XLFD, ICCCM, BDF, and the com-
pound text encoding. This is THE specification of the core of X and is
required for all serious X programmers, though it may be rough going
for those with little experience in interactive computer graphics. See
also Asente & Swick's companion book on the X Toolkit.
Schmandt, Chris, Mark Ackerman, and Debby Hindus, "Augmenting a Window Sys-
tem with Speech Input," _I_E_E_E _C_o_m_p_u_t_e_r, vol. 23, no. 8, pp. 50-56, Au-
gust, 1990. Describes Xspeak, an experimental speech recognition
client that allows voice access to X windows.
Schmidtmann, Chris, M. Tao, and S. Watt, "Design and Implementation of a
Multi-Threaded Xlib," in _X_h_i_b_i_t_i_o_n'_9_2 _C_o_n_f_e_r_e_n_c_e _P_r_o_c_e_e_d_i_n_g_s, pp. 65-
74. The sample Xlib from MIT is thread safe, but not multi-threaded.
This paper describes a true multi-threaded implementation.
Shein, Barry, "What Light Through Yonder Window Breaks?," _S_u_n _E_x_p_e_r_t, vol.
1, no. 6, pp. 44-51, April, 1990. A review of OpenWindows, Sun's pro-
duct version of X.
Shein, Barry, "Primal Screens," _S_u_n _E_x_p_e_r_t, vol. 1, no. 3, pp. 56-69, Janu-
ary, 1990. An interesting, though somewhat religious, comparison of X
and Sun's NeWS window system. It concludes, "even Scott McNealy has
spoken of NeWS as a failure as a standard, although he hastens to add
that it was a technological success."
Sheldrick, Dennis, "Security and the X Window System ," _U_N_I_X _W_o_r_l_d, vol. 9,
no. 1, pp. 103-110, January, 1992. A tutorial on X access control and
authorization.
Smith, Jerry D., _O_b_j_e_c_t-_o_r_i_e_n_t_e_d _P_r_o_g_r_a_m_m_i_n_g _w_i_t_h _t_h_e _X _W_i_n_d_o_w _S_y_s_t_e_m
_T_o_o_l_k_i_t_s, John Wiley & Sons, 1991. ISBN 0-471-53259-2. A tutorial on
X programming, emphasizing object-oriented encapsulation.
Smith, Jerry D., _D_e_s_i_g_n_i_n_g _X _C_l_i_e_n_t_s _w_i_t_h _X_t/_M_o_t_i_f, Morgan Kaufmann Pub-
lishers, 1992. ISBN 1-55860-255-0. A book on X Toolkit and Motif ap-
plication software engineering. Not yet reviewed.
Southerton, Alan, Andrew Wolfe, Jr., and David Granz, "DOS and UNIX On a
Two-Way Street," _U_N_I_X _W_o_r_l_d, vol. 9, no. 8, pp. 48-56, August, 1992.
A review of Quarterdeck's Desqview/X and Cayman System's XGator.
Desqview/X is a full X environment (server and libraries) for DOS.
XGator allows Macintosh applications to display on X servers. They
conclude that these are excellent products, though the initial ver-
sions do have some quality and performance problems.
Spine, Thomas and Jacob VanNoy, "The Evolution of the X User Interface
Style," _D_i_g_i_t_a_l _T_e_c_h_n_i_c_a_l _J_o_u_r_n_a_l, vol. 2, no. 3, pp. 44-51, Summer,
1990. Describes the design and evolution of the DECwindows look and
feel for the X Window System.
Stroyan, Michael, "Three-Dimensional Graphics Using the X Window System,"
_D_r. _D_o_b_b'_s _J_o_u_r_n_a_l, vol. 15, no. 2, pp. 28-36, February, 1990. A high
- 15 -
level description of various approaches to developing 3D graphics
tools for X, including those of the PHIGS Extension to X (PEX) and
HP's Starbase-on-X11 (sox11).
Sung, Hsien Ching Kelvin, Greg Rogers, and William Kubitz, "A Critical
Evaluation of PEX," _I_E_E_E _C_o_m_p_u_t_e_r _G_r_a_p_h_i_c_s & _A_p_p_l_i_c_a_t_i_o_n_s, vol. 10,
no. 6, pp. 65-75, November, 1990. An evaluation of PEX, the X exten-
sion to support PHIGS, from the point of view of a PHIGS implementor.
Sun Microsystems, _O_P_E_N _L_O_O_K _G_r_a_p_h_i_c_a_l _U_s_e_r _I_n_t_e_r_f_a_c_e _S_e_r_i_e_s, Addison-
Wesley, 1990. ISBN 0-201-52365-5, ISBN 0-201-52364-7. This series in-
cludes _F_u_n_c_t_i_o_n_a_l _S_p_e_c_i_f_i_c_a_t_i_o_n and _A_p_p_l_i_c_a_t_i_o_n _S_t_y_l_e _G_u_i_d_e. They
describe the OPEN LOOK user interface, not any particular implementa-
tion. OPEN LOOK was designed by AT&T and Sun and implementations are
available from both. AT&T's implementation uses the X Toolkit. Sun's
implementation uses XView, a similar, but not compatible, toolkit.
Swick, Ralph R. and Mark S. Ackerman, "The X Toolkit: More Bricks for
Building User Interfaces," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _W_i_n_t_e_r, _1_9_8_8 _U_S_E_N_I_X
_C_o_n_f_e_r_e_n_c_e, pp. 221-233. An introduction to the X Toolkit. Describes
the toolkit architecture and the basic Athena widgets.
Terek, Robert and Josepth Pasquale, "Experiences with Audio Conferencing
Using the X Window System, UNIX, and TCP/IP," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e
_S_u_m_m_e_r, _1_9_9_1 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 405-418. Describes an X protocol
extension supporting audio.
Tharenja, Ashok K. and Sridhar Ramachandran, "Migration From ASCII To X,"
_U_N_I_X _R_e_v_i_e_w, vol. 9, no. 11, pp. 35-38, November, 1991. A discussion
on user-level issues on converting from a character terminal environ-
ment to an X environment.
Thomas, Spencer W. and Martin Friedmann, "PEX - A 3-D Extension to X Win-
dows," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _W_i_n_t_e_r, _1_9_8_9 _U_S_E_N_I_X _C_o_n_f_e_r_e_n_c_e, pp. 139-
149. Describes a demonstration implementation of PEX, the
PHIGS/PHIGS+ 3D extension to X.
Treggiari, Leo and Michael Collins, "Development of the XUI Toolkit," _D_i_g_i_-
_t_a_l _T_e_c_h_n_i_c_a_l _J_o_u_r_n_a_l, vol. 2, no. 3, pp. 24-33, Summer, 1990. An
overview of the XUI widget set. The Motif widget set uses the same
application programming interface.
Webster, John, "XMedia as Part of X in Multimedia," _T_h_e _X _J_o_u_r_n_a_l, vol. 2,
no. 1, pp. 6-10, September, 1992. A review of XMedia, a multimedia
system similar in architecture to X.
Widener, Glenn, "The X11 Inter-Client Communication Conventions Manual,"
_S_o_f_t_w_a_r_e _P_r_a_c_t_i_c_e _a_n_d _E_x_p_e_r_i_e_n_c_e, vol. 20, no. S2, October, 1990.
This is not a copy of the ICCCM, but an overview of its goals and
features.
Widener, Glenn and Vania Joloboff, "Developing Internationalized X
Clients," _T_h_e _X _R_e_s_o_u_r_c_e, vol. 0, pp. 133-152, Fall, 1991. An over-
view of the new internationalization (localization) features of the
- 16 -
X11R5 Xlib and Xt. They are based on the ANSI C setlocale function.
Wilson, Dave, "X Windows Terminals Designers Search For a Single-Processor
Solution," _C_o_m_p_u_t_e_r _D_e_s_i_g_n, pp. 77-88, August, 1991. A look at X ter-
minal hardware design issues.
Wood, Patrick, "Introduction to Xlib Programming (2 parts)," _U_N_I_X _W_o_r_l_d,
vol. 6, October-November, 1989. This is a two part tutorial article
on Xlib programming. Not as good as Rosenthal's ``hello, world'' arti-
cle.
X/Open Company, Ltd., _X/_O_p_e_n _P_o_r_t_a_b_i_l_i_t_y _G_u_i_d_e: _W_i_n_d_o_w _M_a_n_a_g_e_m_e_n_t,
Prentice-Hall, 1988. X/Open is an international user group of UNIX
hardware and software developers. It publishes portability guidelines
with the goal that developers that follow these guidelines will be
portable across other hardware and software supporting the guidelines.
The current X/Open window management guidelines are based on the X11R3
specifications. They will probably be upgraded to a more recent ver-
sion of X in their next revision.
Young, Douglas, _O_b_j_e_c_t-_O_r_i_e_n_t_e_d _P_r_o_g_r_a_m_m_i_n_g _w_i_t_h _C++ _a_n_d _O_S_F/_M_o_t_i_f,
Prentice-Hall, 1992. 0-13-630252-1. Not yet reviewed. This is ap-
parently the only detailed book on this subject.
Young, Douglas A., _X _W_i_n_d_o_w _S_y_s_t_e_m: _P_r_o_g_r_a_m_m_i_n_g _a_n_d _A_p_p_l_i_c_a_t_i_o_n_s _W_i_t_h _X_t,
_O_S_F/_M_o_t_i_f _E_d_i_t_i_o_n, Prentice-Hall, 1990. ISBN 0-13-497074-8. This book
is popular with Motif beginners, but it is based on X11R3 and Motif
1.0, so is somewhat out-of-date. The Motif user interface language
(UIL) is not covered at all. The section on subclassing widgets is
also weak: see the Asente & Swick book for better coverage there.
Young, Douglas A., _O_S_F/_M_o_t_i_f _R_e_f_e_r_e_n_c_e _M_a_n_u_a_l, Prentice-Hall, 1990. ISBN
0-13-642786-3. A reference manual for the most popular C language
Motif and Xt functions. The UIL interface to Motif is not covered at
all.
Young, Douglas A., "Programming with the X Toolkit (3 parts)," _U_N_I_X _W_o_r_l_d,
vol. 7, no. 1-3, January-March, 1990. This three part tutorial arti-
cle is based on Young's books on the X Toolkit.
Young, Douglas A. and John A. Pew, _X _W_i_n_d_o_w _S_y_s_t_e_m: _P_r_o_g_r_a_m_m_i_n_g _a_n_d _A_p_p_l_i_-
_c_a_t_i_o_n_s _W_i_t_h _X_t, _O_p_e_n _L_o_o_k _E_d_i_t_i_o_n, Prentice-Hall, 1991. ISBN 0-13-
982992-X. A tutorial on X Toolkit programming, using AT&T's Open Look
Intrinsics Toolkit (OLIT).